#ifndef SDR_H_
#define SDR_H_

#include <scene.h>

struct shader;

struct shader *sdr_create(void);
void sdr_free(struct shader *sdr);

int sdr_load(struct shader *sdr, const char *name);

int sdr_set_name(struct shader *sdr, const char *name);
const char *sdr_get_name(struct shader *sdr);

vec4_t sdr_shade(struct shader *sdr, ray_t ray, struct isect_point *is,
		struct material *mat, struct scene *scn);

#endif	/* SDR_H_ */
